import java.util.Scanner;

public class Questions {
    //不快排，不创建新数组实现两个数组升序
    //（一个数组6个位置，一个数组3个位置，都存放3个元素）
    public void merge(int A[], int m, int B[], int n){
        int i = m-1;//A数组元素的最后一位下标
        int j = n-1;//B数组元素的最后一位下标
        int k = m+n-1;//A数组的最后一位下标
        while(i >= 0 && j >=0){
            if(A[i]<B[j]){
                A[k] = B[j];
                j--;
                k--;
            }else{
                A[k] = A[i];
                j--;
                k--;
            }
        }
        while(j >= 0){//此时A元素全部排完
            A[k] = B[j];
            j--;
            k--;
        }
        while(i >= 0){//此时B元素全部拍完
            A[k] = A[i];
            j--;
            k--;
        }
    }

    //字符集合+多组输入
    public static String func(String str){
        boolean[] pos = new boolean[255];
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < pos.length; i++) {
            char ch = str.charAt(i);
            if(pos[ch] == false){
                sb.append(ch);
                pos[ch] = true;
            }
        }
        return sb.toString();
    }


    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while(scanner.hasNextLine()){
            String str = scanner.nextLine();
        }
    }
}
